using System;
using System.ComponentModel;
using System.Runtime.Serialization;
namespace Net35.Xrm.Sdk.Query
{
	[DataContract(Name = "QueryBase", Namespace = "http://schemas.microsoft.com/xrm/2011/Contracts"), KnownType(typeof(QueryExpression)), KnownType(typeof(QueryByAttribute)), KnownType(typeof(FetchExpression))]
	public abstract class QueryBase : IExtensibleDataObject
	{
		private ExtensionDataObject _extensionDataObject;
		public ExtensionDataObject ExtensionData
		{
			get
			{
				return this._extensionDataObject;
			}
			set
			{
				this._extensionDataObject = value;
			}
		}
		[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
		internal abstract void Accept(IQueryVisitor visitor);
	}
}
